package com.ask.server.service;

import com.ask.common.result.Result;
import com.ask.pojo.dto.CategoryDTO;
import com.ask.pojo.dto.CategoryQueryDTO;
import com.ask.pojo.entity.Category;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

public interface ICategoryService extends IService<Category> {
    /**
     * 新增分类
     *
     * @param categoryDTO
     */
    void addCategory(CategoryDTO categoryDTO);

    /**
     * 根据id删除分类
     *
     * @param id
     * @return
     */
    Result deleteById(Long id);

    /**
     * 跟新分类
     * @param categoryDTO
     * @return
     */
    void updateCategory(CategoryDTO categoryDTO);

    /**
     * 启用/禁用分类
     * @param id
     * @param status
     * @return
     */
    void updateStatus(Long id, Integer status);

    /**
     * 根据类型查询
     * @param type
     * @return
     */
    List<Category> listByType(Integer type);

    /**
     * 分页查询
     * @param categoryQueryDTO
     * @return
     */
    List<Category> pageQuery(CategoryQueryDTO categoryQueryDTO);
}
